package com.cskaoyan.javase.homework.day02;

import java.util.Scanner;

/**
 * 判断奇偶性
 *
 * @since 21:31
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class JudgeNumDemo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个int整数：");
        int num = sc.nextInt();
        System.out.println("输入的数是一个奇数吗？  " + isOddNum(num));
        System.out.println("输入的数是一个偶数吗？  " + isEvenNum(num));
    }

    /**
     * 判断传入的int数是否是奇数
     * @since 21:32
     * @param num 该方法传入一个int整数
     * @return boolean 返回true表示是一个奇数，否则不是
     * @author wuguidong@cskaoyan.onaliyun.com
     */
    public static boolean isOddNum(int num) {
        /*
            if的使用
            if、if...else，多分支的if...else
            如果分支很多，那么就会多很多大括号，大括号越多代码层次就越多，可读性就很差
            所以我们在用if时，尽量不要写else（该用还是要用）

            日常开发中，用一个return去结束if单分支
            然后在后面继续写代码，不要用else

         */
        if (num % 2 != 0) {
            // 是奇数
            return true;
        }
        // 代码能够运行到这里，说明它肯定不是奇数，一定是偶数
        return false;
    }


    /**
     * 判断传入的int数是否是偶数
     * @since 21:32
     * @param num 该方法传入一个int整数
     * @return boolean 返回true表示是一个偶数，否则不是
     * @author wuguidong@cskaoyan.onaliyun.com
     */
    public static boolean isEvenNum(int num) {
        // 一个数不是奇数就是偶数
        return !isOddNum(num);
    }
}
